The present invention relates to a dialer capable of automatically prioritizing telephone dialing strings and, more particularly, to a dialer capable of automatically prioritizing a list of telephone dialing strings for a telecommunications device and automatically dialing the prioritized list of dialing strings for connection to an external network.
The number and extent of computer-accessible networks has risen rapidly in recent years, with the most notable example being the Internet. Many of these networks are based on what is known as a client-server model. In this model, a user uses a computer (which includes hardware and software), also called a client device, to exchange data with a server on the network. In some cases, connection is established with the network server by means of a xe2x80x9cdial-up connectionxe2x80x9d. In a dial-up connection, a phone call is placed by the client on a telephone system (which may be wired or wireless) and a modem attached to the client device establishes a data connection with a modem attached to the network server. Data is then exchanged between the client device and the network server over the telephone system.
A software application commonly referred to a xe2x80x9cdialerxe2x80x9d generally resides in the client device and is utilized in making dial-up connections. Based upon input from the user, and possibly stored information such as data files or a database of phone numbers, etc., the dialer determines the appropriate number (one dialing string) to dial and places the call. If the call is successful, a data connection is established with the network server. If the call is unsuccessful, the dialer simply informs the user of the failed attempt and waits for further input from the user.
Many current and potential users of dial-up networking struggle to make successful data connections. If the first attempt at a connection fails, many users are not technically sophisticated enough to correct a problem. This is a particular concern with mobile users. If the user is not mobile, i.e., the user is routinely making a connection from a single location such as from a home or office, the user can oftentimes obtain help from co-workers or others at home if dialing or connection problems occur. Furthermore, once the problem is fixed, it generally stays fixed since the user is calling from the same location each time. Mobile users, however, routinely encounter dialing problems as they move from place to place. Oftentimes, they are in situations where help is not readily available. For example, some of the dialing problems that a mobile user may encounter are as follows:
(1) Dialing rules for calls on wired (Public Switched Telephone Network) networks are different than for calls on wireless (cellular) networks.
(2) For wired calls, some locations such as hotels and offices require a first digit to be dialed to obtain an outside line. The actual digit used is often xe2x80x9c9xe2x80x9d, but may vary from location to location.
(3) Some populated areas of the country now require the area code to be utilized for local as well as long distance calls.
Other than re-dialing numbers when a busy signal occurs, dialers have no capability to recover from a failed dialing attempt. User intervention is necessary to make the connection successful. However, if the user does not know what to do to correct the problem, successful connection to the network is unlikely.
In a telecommunications device having a memory, a user input device, and a modem for connection to an external network, each controlled by a processor, a dialing apparatus is provided for connection to the external network. The dialing apparatus includes a dialer program operating in the telecommunications device for prioritizing a plurality of different dialing strings, highest to lowest, each associated with the external network for connection of the telecommunications device to the external network based on the location of the telecommunications device.
The plurality of different dialing strings, each associated with the external network, is stored in the memory of the telecommunications device. The dialer program receives, via the user input device, (a) a selected dialing string from the plurality of different dialing strings, and (b) user related information including (b1) whether connection to the external network is to be wireless or wired, (b2) if the connection to the external network is to be wired, whether a dial prefix is needed to obtain an outside line, and (b3) if the connection to the external network is to be wireless, whether the telecommunications device is in its home system or roaming. The dialer program develops the prioritized list of dialing strings based upon the selected dialing string and the stored user related information.
In one form, the dialer program automatically dials the dialing string having the highest priority from the prioritized list. If connection to the external network is unable to be established by dialing the highest priority dialing string, the dialer program automatically dials the other dialing strings in the prioritized list, in turn in accordance with their priority listing, until connection to the external network is established or all dialing strings have been exhausted. The condition of being unable to establish connection to the external network does not include obtaining a busy signal.
In another form, each of the plurality of different dialing strings includes associated location information. The dialer program receives location information for a current location of the telecommunications device via the user input device and compares the current location information of the telecommunications device with the location information associated with the selected dialing string. If they match, the dialer program prioritizes local calls higher than long distance calls. If they do not match, the dialer program prioritizes long distance calls higher than local calls.
The location information for the current location of the telecommunications device may be obtained by activating either a GPS receiver or cellular positioning equipment resident within the telecommunications device.
The telecommunications device may include a laptop computer having both wired and wireless modems for connection to the external network.
In yet another form, if a dial prefix is needed to obtain an outside line, the dialer program develops a prioritized list of dial prefixes for obtaining the outside line. The prioritized list of dial prefixes may include, in order, a user provided dial prefix, if any, and then 9, 0, 8, 7, 6, 5, 4, 3, 2 and 1, skipping over the user provided dial prefix, if any.
In still another form, if a dial prefix is needed to obtain an outside line, the dialer program determines an appropriate dial prefix for obtaining the outside line by first dialing the dial prefix having the highest priority from the prioritized list. If a dial tone is not detected, the dialer program dials the other dial prefixes in the prioritized list, in turn in accordance with their priority listing, until a dial tone is detected or all dial prefixes have been exhausted.
A method is also provided for compiling a list of telephone dialing strings for a telecommunications device for connection of the telecommunications device to a network external to the telecommunications device. The method generally includes the steps of storing a plurality of different dialing strings each associated with the external network, selecting one of the plurality of different dialing strings based on the location of the telecommunications device, storing user related information including (a) whether connection to the external network is to be wireless or wired, (b) if the connection to the external network is to be wired, whether a dial prefix is needed to obtain an outside line and (c) if the connection to the external network is to be wireless, whether the telecommunications device is in its home system or roaming, and developing a list of dialing strings varying from highest priority to lowest priority based upon the selected dialing string and the stored user related information.
An object of the present invention is to improve dialer sophistication such that a successful dial-up connection can be made on behalf of the user when dialing problems occur. A further object of the present invention is to so without user intervention.